/*
* ============================================================================
*  Name     : GV60SettingsSettingList.h
*  Part of  : GV60
*  Copyright: Wipo Software
* ============================================================================
*/

#ifndef __GV60_SETTING_LIST_H__
#define __GV60_SETTING_LIST_H__


#include <coecntrl.h>
#include <aknsettingitemlist.h>
#include "GV60Config.h"

class CGV60SettingsSettingList : public CAknSettingItemList
{
  public:
    static CGV60SettingsSettingList* NewL(CGV60Configuration& n_iConfiguration);
    static CGV60SettingsSettingList* NewLC(CGV60Configuration& n_iConfiguration);
    virtual ~CGV60SettingsSettingList();

  public:
    void  SizeChanged();
    void  HandleResourceChange(TInt aType);
    void  EditItemL(TInt aIndex, TBool aCalledFromMenu);
    void  EditCurrentItemL();
    void  StoreSettings();
    TBool GetValues(CGV60Configuration& n_iConfiguration);
    
  private:
    CGV60SettingsSettingList(CGV60Configuration& n_iConfiguration);
    CAknSettingItem* CreateSettingItemL (TInt aSettingId);
    TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);

  private:  // Data
    TBuf<GV60_MAX_USERNAME_LEN>   m_iUsername;
    TBuf<GV60_MAX_PASSWORD_LEN>   m_iPassword;
    TInt                          m_iInitialSync;
};

#endif // __NIKERUN_SETTING_LIST_H__

